var $anewSendFinishProductTable = $('#anewSendFinishProductList');
var $productListTable = $('#productList');
// 表格高度
var globalHeight;
//防止表头与表格不对齐
$(window).resize(function () {
    $anewSendFinishProductTable.bootstrapTable('resetView');
    $productListTable.bootstrapTable('resetView');
});

$('#customInput').css('display','none');

$(function () {
    globalHeight = $(window).height() - $('#anewSendFinishProductList').offset().top - 30 - 25;
    // 初始化日期选择控件
    $('.date-input').datepicker({
        language: "zh-CN",
        autoclose: true,
        clearBtn: true,
        todayHighlight: true,
        format: "yyyy-mm-dd"
    });
    $('.datepicker').datepicker({
        language: "zh-CN",
        autoclose: true,
        clearBtn: true,
        todayHighlight: true,
        format: "yyyy-mm-dd"
    });

    //初始化列表
    anewSendFinishProductList();

});

/**
 * 功能：缩放页面重绘table高度
 * */
$(window).resize(debounce(resizeTable, 500));
function resizeTable() {
    // 计算初始表格高度 = 浏览器高度 - 表格距浏览器顶部高度 - 主体底部padding+margin
    // 注：表格距浏览器顶部高度此处用最外层div获取，解决table垂直滚动时距离
    globalHeight = $(window).height() - $('.bootstrap-table').offset().top - 30 - 25;
    $('#anewSendFinishProductList').bootstrapTable('resetView', {height: globalHeight});
}


function anewSendFinishProductList() {
    //先销毁表格
    $anewSendFinishProductTable.bootstrapTable('destroy');
    $anewSendFinishProductTable.bootstrapTable({
        classes: 'table table-hover table-bordered table-striped',
        url: '/finishOrderProduct/selectAnewSendFinishProduct',//请求地址
        method: 'post',//请求方式
        contentType: "application/x-www-form-urlencoded",//请求内容类型
        dataType: "json",//数据类型
        striped: true,//是否显示行间隔色
        sortable: true,//是否启用排序
        sortOrder: "desc",//排序方式
        sortName: 'orderCompleteTm',//排序字段
        cache: false,//是否使用缓存
        showColumns: false,//显示隐藏列
        showRefresh: false,//显示刷新按钮
        showToggle: false,//切换显示样式
        showFooter: false,//显示Table脚部
        pagination: true,//是否显示分页
        showPaginationSwitch: false,//是否显示分页按钮
        clickToSelect: false,//是否启用点击选中行
        singleSelect: false,
        minimumCountColumns: 2,//最少要显示的列数
        undefinedText: '',//cell没有值时显示
        sidePagination: "server",//分页方式：client客户端分页，server服务端分页
        uniqueId: 'productOrderId',
        idField: 'productOrderId',
        pageSize: 10,//每页的记录行数
        pageNumber: 1,//初始化加载第1页，默认第1页
        pageList: ['10'],//可供选择的每页的行数
        queryParams: queryParams,//查询参数
        height: globalHeight,
        columns: [
            {title: '主键', field: 'productOrderId', visible: false},
            {title: '序号', field: 'index', align: 'center', valign: 'left', width: '60',formatter: indexFormat},
            {title: '订单编号', field: 'productOrderNum', align: 'center', valign: 'left', formatter: toOrderInfo},
            {title: '所有人',field: 'userName', align: 'center'},
            {title: '分公司名称',field: 'companyName', align: 'center'},
            {title: '订单金额',field: 'orderActualTotalAmount', align: 'center'},
            {title: '订单完成时间',field: 'orderCompleteTm', align: 'center'},
            {title: '客户名称',field: 'customerName', align: 'center'},
            {title: '补发状态',field: 'anewSendStatus', align: 'center',formatter: anewSendStatus},
            {title: '操作',field: 'operate',align: 'right',events:operateEvents,formatter: genderOpt}
        ],
        responseHandler: function (result) {
            if (result.code == "000000") {
                var obj = {
                    "rows": result.data,
                    "total": result.totalRecords//总条数
                };
            } else {
                var obj = {
                    "total": 0,
                    "rows": [],
                }
            }
            return obj;
        },
        onLoadSuccess: function () {
            //加载成功时执行
            $("[data-toggle='tooltip']").tooltip();//加这个是为了让操作列的提示图标显示在上方

            // table列可拖动宽度
            $('.JCLRgrips').remove();
            $('#orderTableList').css({
                minWidth: $('#orderTableList').width()
            }).colResizable({
                resizeMode: 'overflow',
                liveDrag: true,
                gripInnerHtml: "<div class='grip'></div>",
                draggingClass: "dragging",
                disabledColumns: [0,11,],      // 禁止拖动的列
                postbackSafe: true,                                         // 刷新后保持拖动的宽度
                partialRefresh: true,                                       // 刷新表格之后继续保持可拖动功能
                flush: true,
                minWidth: 80,
                /*onResize: function () {
                }*/
            });
        },
        onLoadError: function (status) {
            if (status == 403) {
                alert("权限不足！禁止访问！");
            } else {
                //加载失败时执行
                alert("加载失败！");
            }
        },
        formatLoadingMessage: function () {
            return "请稍等，加载中...";
        },
        formatNoMatches: function () {
            return '无符合条件的记录';
        },
    });
}

function genderOpt(value, row, index) {
    let html = '';
    html += '<button class="btn btn-default" id="detail"><i class="mdi mdi-eye"></i>补发产品</button>';
    return html;
}

var operateEvents={
    'click #detail': function (e, value, row, index) {
        $('#orderId').val(row.productOrderId);
        productList();
       $("#MoneyModels").modal('show')
    }
}

function productList() {
    //先销毁表格
    $productListTable.bootstrapTable('destroy');
    $productListTable.bootstrapTable({
        classes: 'table table-hover table-bordered table-striped',
        url: '/finishOrderProduct/selectFinishProduct',//请求地址
        method: 'post',//请求方式
        contentType: "application/x-www-form-urlencoded",//请求内容类型
        dataType: "json",//数据类型
        striped: true,//是否显示行间隔色
        sortable: true,//是否启用排序
        sortOrder: "desc",//排序方式
        sortName: 'orderCompleteTm',//排序字段
        cache: false,//是否使用缓存
        showColumns: false,//显示隐藏列
        showRefresh: false,//显示刷新按钮
        showToggle: false,//切换显示样式
        showFooter: false,//显示Table脚部
        pagination: true,//是否显示分页
        showPaginationSwitch: false,//是否显示分页按钮
        clickToSelect: false,//是否启用点击选中行
        singleSelect: false,        minimumCountColumns: 2,//最少要显示的列数
        undefinedText: '',//cell没有值时显示
        sidePagination: "server",//分页方式：client客户端分页，server服务端分页
        pageSize: 10,//每页的记录行数
        pageNumber: 1,//初始化加载第1页，默认第1页
        pageList: ['10'],//可供选择的每页的行数
        queryParams: queryParams2,//查询参数
        columns: [
            {title: '主键', field: 'productOrderId', visible: false},
            {title: '序号', field: 'productName', align: 'center', valign: 'left', width: '60',formatter: indexFormat},
            {title: '产品名称', field: 'productName', align: 'center', valign: 'left', width: '100'}
        ],
        responseHandler: function (result) {
            if (result.code == "000000") {
                var obj = {
                    "rows": result.data,
                    "total": result.totalRecords//总条数
                };
            } else {
                var obj = {
                    "total": 0,
                    "rows": [],
                }
            }
            return obj;
        },
        onLoadSuccess: function () {
            //加载成功时执行
            $("[data-toggle='tooltip']").tooltip();//加这个是为了让操作列的提示图标显示在上方

            // table列可拖动宽度
            $('.JCLRgrips').remove();
            $('#orderTableList').css({
                minWidth: $('#orderTableList').width()
            }).colResizable({
                resizeMode: 'overflow',
                liveDrag: true,
                gripInnerHtml: "<div class='grip'></div>",
                draggingClass: "dragging",
                disabledColumns: [0,11,],      // 禁止拖动的列
                postbackSafe: true,                                         // 刷新后保持拖动的宽度
                partialRefresh: true,                                       // 刷新表格之后继续保持可拖动功能
                flush: true,
                minWidth: 80,
                /*onResize: function () {
                }*/
            });
        },
        onLoadError: function (status) {
            if (status == 403) {
                alert("权限不足！禁止访问！");
            } else {
                //加载失败时执行
                alert("加载失败！");
            }
        },
        formatLoadingMessage: function () {
            return "请稍等，加载中...";
        },
        formatNoMatches: function () {
            return '无符合条件的记录';
        },
    });
}

function queryParams(params) {
    params.pageSize = params.limit;
    params.pageIndex = (params.offset / params.limit) + 1;
    params.sortName = params.sort; //排序列名
    params.sortOrder = params.order;//排序方式

    params.dataUnit = $('#dateType').val();//dateType(all:全部; thisWeek:本周; thisMonth:本月; thisYear:本年)
    //普通搜索条件
    params.orderNumber = $.trim($('#orderNumber').val());
    //开始时间
    params.startTm = $('#startTm').val();
    //结束时间
    params.endTm = $('#endTm').val();
    return params;
}


function queryParams2(params) {
    params.pageSize = params.limit;
    params.pageIndex = (params.offset / params.limit) + 1;
    params.orderId = $('#orderId').val();
    return params;
}

$('#customDateBtn').on('click',function () {
    $anewSendFinishProductTable.bootstrapTable('refreshOptions', {pageNumber: 1});
})

/**
 * 搜索点击事件
 */
function searchOrderList(type,value){
    $('.all').addClass('active-second');
    $('.topDay').removeClass('active-second');
    $('.day').removeClass('active-second');
    $('.customize').removeClass('active-second');
    $('#customInput').css('display','none');
    $('#startTm').val('');
    $('#endTm').val('');
    $("#dateType").val("all");
    if (type === 1) {//普通条件查询
        $anewSendFinishProductTable.bootstrapTable('refreshOptions', {pageNumber: 1, queryParams: queryParams});
        // 点击搜索重置表单并收起高级搜索 需传入高级搜索id #filterContent
        $('#filterContent').collapse('hide').on('hidden.bs.collapse', function () {
            resetOrderQueryParams('#filterContent');
        });
    }

}


function selectTime(time) {
    if (time == 'all') {//全部
        $('.all').addClass('active-second');
        $('.topDay').removeClass('active-second');
        $('.day').removeClass('active-second');
        $('.customize').removeClass('active-second');
        $("#dateType").val("all");
        $('#customInput').css('display','none');
        $('#startTm').val('');
        $('#endTm').val('');
    }

    if (time == 'topDay') {//昨天
        $('.topDay').addClass('active-second');
        $('.all').removeClass('active-second');
        $('.day').removeClass('active-second');
        $('.customize').removeClass('active-second');
        $("#dateType").val("topDay");
        $('#customInput').css('display','none');
        $('#startTm').val('');
        $('#endTm').val('');
    }
    if (time == 'day') {//今天
        $('.day').addClass('active-second');
        $('.all').removeClass('active-second');
        $('.topDay').removeClass('active-second');
        $('.customize').removeClass('active-second');
        $("#dateType").val("day");
        $('#customInput').css('display','none');
        $('#startTm').val('');
        $('#endTm').val('');
    }
    if (time == 'customize') {//自定义
        $('.customize').addClass('active-second');
        $('.all').removeClass('active-second');
        $('.topDay').removeClass('active-second');
        $('.day').removeClass('active-second');
        $("#dateType").val("");
        $('#customInput').css('display','block');
        return;
    }
    $anewSendFinishProductTable.bootstrapTable('refreshOptions', {pageNumber: 1});
}

/**
 * --列表序列号
 */
function indexFormat(value, row, index) {
    return index + 1;
}

/**
 * 订单列表 --分页列表页
 */
function toOrderInfo(value, row, index) {
    if(value == null) {
        return '<span href="JavaScript:void(0);">-</span>';
    }else {
        return '<a href="JavaScript:void(0);" onclick=\'OrderDetail(\"'+row.productOrderNum+'")\'>'+value+'</a>';
    }
}

function OrderDetail(orderNumber) {
    parent.$(parent.document).data('multitabs').create({
        iframe: true,
        title: '订单详情',
        url: "/front/finance/orderInfoByNumber?productOrderNumber="+orderNumber
    },true);
}

function anewSendStatus(value, row, index) {
    if (value ==0 ){
        return "补发失败";
    }
    if (value ==1 ){
        return "补发成功";
    }
    return "未补发";
}

//提交
function submitProductName() {
    $.ajax({
        url: '/finishOrderProduct/anewSendFinishProduct?orderId='+$('#orderId').val(),
        type: 'POST',
        success: (function (data) {
            if (data.code == "000000") {
                $.alert({
                    title: '提示',
                    content: '操作成功！',
                    buttons: {
                        confirm: {
                            text: '确认',
                            btnClass: 'btn-primary',
                            action: function () {
                                window.location.reload();
                            }
                        }
                    }
                })            } else {
                alert("操作失败");
            }
        }),
        error: (function () {
            alert("失败");
        })
    });

    var bootstrapValidator = $(".Money-company").data('bootstrapValidator');
    bootstrapValidator.validate();
    if (!bootstrapValidator.isValid()) {
        return;
    }
}

function cancelProduct() {
    $("#productName").val('')
    if($(".Money-company").data('bootstrapValidator')!=undefined){
        $(".Money-company").data('bootstrapValidator').destroy();
        $('.Money-company').data('bootstrapValidator', null);
    }
}